//找到所有数组中消失的数字
//https://leetcode.cn/problems/find-all-numbers-disappeared-in-an-array/
class Solution {
public:
    vector<int> findDisappearedNumbers(vector<int>& nums) {
        int n = nums.size();
        //数组中在n范围内已经出现的数 通过+n后都会大于n 没有出现的数 则对应下标位置的数因为不存在此数 无法被+n
        for (int& num : nums) 
            nums[(num - 1) % n] += n;
        vector<int> ret;
        for (int i = 0; i < n; ++i) if (nums[i] <= n) ret.push_back(i + 1);

        return ret;
    }
};
